Linear filtering based on second-order statistics, such as a mean square error (MSE), requires accurately modeled dynamic systems and noise processes. Examples of filtering algorithms using second-order statistics include Kalman filters, extended Kalman filters (EKF) and its variants, Wiener Filters, and Unscented Kalman Filters. The estimators in these filters are linear functions of the data. These filters have optimalilty properties in the sense of minimum mean square error (MMSE) because the underlying system is linear and Gaussian. However, despite theoretical optimality, due to the real-world nature of the application of the filtering system estimation errors occur. Sources of error may be due to mismatched dynamics (e.g. such as drift or unforeseen disturbances) and/or non-stationary and/or non-Gaussian noise components. A trivial example of mismatched system dynamics between an assumed model and the underlying physical process is where a value is assumed to be constant for all time, but in fact varies say due to a time-varying phenomena (e.g. thermal gradients). Thus the value modeled as constant is actually a random-walk process. If the random walk is not modeled, the measurements used to drive the filter will have resulting in large error residuals and a complete breakdown of the assumptions that lead to optimality of the solution, and further the model may be completely unusable for the purpose intended (e.g. control, on-line fault monitoring, signal tracking).
It is inevitable that in the modeling of complex systems of practical interest some mis-modeling will occur. One method to counter the deleterious effects of mis-modeling of the physical dynamics is to artificially increase the noise components driving the system model (e.g. specifically the process noise). Additionally there is the potential for unforeseen disturbances (e.g. impulse disturbances) to be applied to a system, which serve to drive the system far from its nominal operating point and render the linear filter useless (e.g. erroneous outputs) for a significant length of time due to the memory of the filter. It is well known the recursive systems like Kalman filter are infinite-impulse response systems (IIR), and hence have (in theory) infinite memory.
There is an additional problem in that recursive second-order filters, like Kalman filters, have a tendency to become “overconfident” when operated for long periods of time. The term “overconfident” implies that additional data has a decreased impact in the recursion such that (in Kalman terminology) the Kalman gain applied to an innovation (or residual) approaches zero as data is accumulated. This effect is predicitable due to the theoretical state error covariance matrix PT decreasing as the recursion length increases. An under-appreciated fact in the application of Kalman filters is that the state error covariance matrix PT is not the true state error covariance. It is merely the modeled state error covariance matrix assuming perfect models and depends not on any measurements at all, but merely the recursion index. Thus, in essence, the state error covariance matrix PT can be viewed as a pre-planned recipe for (indirectly) controlling the amount of true measured error residual into the filter recursion. It is very desirable to include a mechanism to prevent the filter from becoming “overconfident” in the theoretical predictions. Otherwise, as a result, the unforeseen, e.g., any unmodeled system changes cannot be adapted to, and thus, system performance is unacceptably poor.
Thus, from the above preliminary discussion it should be clear that mechanisms to compensate or adapt the model of complex physical systems are needed.
To reduce the impact from the decaying effect of new data, some prior art systems, for example, have artificially increased the modeled process noise (often denoted as Q), while other systems, for example, may limit the Kalman gain to minimum values. These approaches are ad-hoc and often lead to undesired performance trades such as poor steady state performance.
Other systems buffer the incoming data over a moving window and implement the system model as a limited memory filter. This approach also negatively impacts some aspects of system performance, most notably the steady state error achievable.
Still other implementations may attempt monitoring of the on-line performance using error residuals (i.e. the difference between the predicted measurement from the filter and the actual measurement taken over a sequence of time indices) and use an ad hoc modification of the PT matrix to compensate for detectable artifacts (e.g. non-zero correlation, non-zero mean, or non-Gaussianity) in the error sequence. This requires significant additional signal processing resources for an analysis of the error sequences which may negatively impact a resource constrained system.
Still other systems may employ use multiple model filtering which in its most basic terms selects a filtering mode (i.e. a system model from a group) that fits the current dynamic situation. However, this obviously increases the computational load which may be unacceptable in some instances.
The current invention addresses the shortcomings of existing approaches and introduces a novel way of compensating for unforeseen disturbances and mis-modeling errors without sacrificing system performance and allowing all physically motivated system variables (e.g. process noise, measurement noise, model order) to retain their inherent physical significance and the resulting is applied in a communication system context.